It is common to connect many devices providing same or similar type of service to a network. A user, who is operating a PC (personal computer) or the like, selects one device out of these many devices to enjoy a service. The specifications of the service which the selected device can provide must conform to the conditions for executing the service requested by the user (settings relating to capability and functions).
Conventionally, the devices which can be used on the network are detected, listed, and notified to the user. The user then selects one device from the list and obtains detailed information relating to the individual functions and capabilities of the selected device. The selected device is used when the user has determined that it is appropriate based on the above information. On the other hand, when the user determines that the device is not appropriate, he selects another device.
However, if a great number of devices are connected to the network, and the user wishes to execute a service under specific or complex conditions, the operation of selecting the device and setting the service conditions for it must be repeated many times until a device is found which is appropriate to the user's requirements. Moreover, the user must input the execution conditions each time. This is inefficient and inconvenient.
Let us consider printing as the service. In this case, many printers are connected to the network. One of these printers is selected (may be by default) and a document, image or the like is printed on this printer. In the case of special cases such as color printing or printing on both sides of a paper, printers which comprise these functions are identified by their names (for example, product names) and selected accordingly. When it is not possible to determine from the names of the printers whether they comprise the required functions, one printer is selected and detailed information relating to its functions and capabilities is checked. When the selected printer does not meet the requirements, the user tries another printer until he finds an appropriate printer.